package file;

import java.io.File;
import java.io.FileFilter;

//有条件的获取一个目录中的子项
//filter过滤器
//File有一个重载的listFiles方法，允许我们传一个文件过滤器，并在过滤器中定义过滤
//条件，之后listFiles执行完毕会将目录中满足过滤器要求子项进行返回
public class ListFileDemo02 {
    public static void main(String[] args) {
        //获取当前目录中含有o的子项
        File dir=new File(".");
        if (dir.isDirectory()){
            FileFilter filter=new FileFilter() {
                public boolean accept(File file) {
                    System.out.println("正在过滤"+file.getName());
                    return file.getName().contains("o");
                }
            };
            File[] subms = dir.listFiles(filter);
            System.out.println("共有"+subms.length+"个sumbs");

            for (int i = 0; i < subms.length; i++) {
                File file= subms[i];
                System.out.println(file.getName());
            }
        }
    }
}
